package com.health.service;

import com.health.pojo.Setmeal;
import com.health.vo.PageResult;

import java.util.Date;
import java.util.List;
import java.util.Map;

public interface SetMealService {
    /**
     * 套餐分页条件查询
     */
    PageResult<Setmeal> findPage(Integer pageNow, Integer pageSize, String query);

    /**
     * 删除套餐
     */
    int deleteById(Integer id);

    /**
     * 新增套餐
     */
    int add(Setmeal setmeal, Integer[] checkGroupIds);

    /**
     * 根据ID查询套餐
     */
    Setmeal findById(Integer id);

    /**
     * 根据套餐ID查询关联到的检查组ID
     */
    List<Integer> findCheckGroupIds(Integer id);

    /**
     * 编辑套餐
     */
    int update(Setmeal setmeal, Integer[] checkGroupIds);

    /**
     * 查询数据库中的所有图片
     */
    List<String> findImgs();

    /**
     * 查询所有套餐
     */
    List<Setmeal> findAll();

    /**
     * 查询套餐详情
     */
    Setmeal findDetail(Integer id);

    /**
     * 查询热门套餐数据报告
     * 预订数量前3的套餐
     */
    List<Map<String, Object>> findSetMealReport();

    /**
     * 查询套餐预订数量
     */
    List<Map<String, Object>> findSetMealCount(Date start, Date end);

    /**
     * 条件查询套餐
     */
    List<Setmeal> findByQuery(String query);
}
